/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.gestaoFuneraria.DAO;

import br.com.gestaoFuneraria.modelo.Associado;
import br.com.gestaoFuneraria.modelo.Dependente;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Fatec
 */
public class DependenteDAO {

    private Connection conexao;

    public void cadastrar(Dependente d) throws SQLException {
        //String sql = "INSERT INTO dependente ( cd_dependente, nm_dependente, cd_registro_geral_dependente, cd_cpf_dependente, dt_nascimento_dependente, ic_sexo_masculino_feminino_dependente) VALUES (?,?,?,?,?,?)";
        String sql = "INSERT INTO dependente ( nm_dependente, cd_registro_geral_dependente, cd_cpf_dependente, dt_nascimento_dependente, ic_sexo_masculino_feminino_dependente) VALUES (?,?,?,?,?)";
        PreparedStatement stmt = conexao.prepareStatement(sql);
       // stmt.setInt(1, d.getId());
        stmt.setString(1, d.getNome());
        stmt.setString(2, d.getRg());
        stmt.setString(3, d.getCpf());
        stmt.setString(4, d.getNascimento());
        stmt.setString(5, d.getSexo());
        stmt.execute();
        stmt.close();
    }

    public List<Dependente> getLista() throws SQLException {
        String sql = "SELECT * FROM dependente";
        PreparedStatement stmt = this.conexao.prepareStatement(sql);
        ResultSet rs = stmt.executeQuery();

        List<Dependente> dependente = new ArrayList<Dependente>();
        while (rs.next()) {
            Dependente d1 = new Dependente();
            d1.setId(Integer.parseInt(rs.getString("cd_dependente")));
            d1.setNome(rs.getString("nm_dependente"));
            d1.setRg(rs.getString("cd_registro_geral_dependente"));
            d1.setCpf(rs.getString("cd_cpf_dependente"));
            d1.setSexo(rs.getString("ic_sexo_masculino_feminino_dependente"));
            d1.setNascimento(rs.getString("dt_nascimento_dependente"));
            dependente.add(d1);
        }
        rs.close();
        stmt.close();
        return dependente;
    }
//     public void altera(Associado a1) throws SQLException {
//        String sql = "UPDATE associado set cd_associado=?, nm_associado=?, cd_registro_geral_associado=?, cd_cpf_associado=?,cd_titutlo_eleitoral_associado=?,ic_sexo_masculino_feminino=?,nm_filiacao=?,dt_nascimento_associado=?,nm_endereco_associado=?,nm_cidade_associado=?,sg_unidade_federativa_associado=?,cd_cep_associado=?,cd_funcionario=? where cd_associado=?";
//        PreparedStatement stmt = conexao.prepareStatement(sql);
//        stmt.setInt(1, a1.getId());
//        stmt.setString(2, a1.getNome());
//        stmt.setString(3, a1.getRg());
//        stmt.setString(4, a1.getCpf());
//        stmt.setString(5, a1.getTituloEleitoral());
//        stmt.setString(6, a1.getSexo());
//        stmt.setString(7, a1.getFiliacao());
//        stmt.setString(8, a1.getDataNascimento());
//        stmt.setString(9, a1.getEndereco());
//        stmt.setString(10, a1.getCidade());
//        stmt.setString(11, a1.getUf());
//        stmt.setString(12, a1.getCep());
//        stmt.setInt(13, a1.getIdFuncionario());
//        //executa o PreparedStatement
//        stmt.execute();
//        stmt.close();

    public DependenteDAO() throws SQLException {
        this.conexao = Conexao.getConexao();
    }
}
